Handheld computers as well as other types of electronic devices include the use of an operating system running on an electronic processor. Third party software developers often develop software modules configured to run under the operating system, on the processor and using the electronic device hardware. When a new version of the operating system or a new version or type of device is developed, the software module may make certain assumptions about the operating system or about the characteristics (hardware and/or software) of the device that are no longer applicable under the new operating system and/or device. Provided with such assumptions, the software module is often unable to function or functions in an undesirable manner.
Accordingly, there is a need for a compatibility information source or software attribute verification resource that is defined by the operating system and is included in the software module. Further, there is a need for a compatibility information source in software modules, add-ons, applications, or plug-ins which communicate assumptions about the operating system and device hardware as well as behavior data. Further, there is a need for a compatibility information source in a software module that is configured to communicate hardware requirements for the software module. Further still, there is a need for a method of developing software which includes the inclusion of software compatibility information within the software module.
The techniques herein below extend to those embodiments which fall within the scope of the appended claims, regardless of whether they accomplish one or more of the above mentioned needs.